# Документация для класса взаимодействия с spirech.org API, сокр. SAPI, версия 0.1

## Особенности
* Ошибки при сетевых запросах не отлавливаются и выбрасываются при вызове методов. Ошибки стандартные для библиотеки requests.
* В случае неправильного кода ответа (отличного от 200) или отрицательного ответа методы возвращают False.
* Адаптированная под консоль разметка должна выводиться только через print() из пакета [rich](https://github.com/Textualize/rich/blob/master/README.ru.md)
* В этой версии, вероятно, есть баги, о них писать в тред разработки в /comp/, не в /d/.

## Начало использования
### Установка
	pip3 install -r reqs.txt

### Правильный импорт
	from rich import print
	from sapi import SAPI

### Инициализация класса
	sp = SAPI(root="https://spirech.org")  # root - необязательный параметр

Параметры:
	__init__(self, root="https://spirech.org", verbose=0, proxies={})

Для правильной работы запросов через сеть TOR или I2P требуется прокси, передать их можно параметром proxies. Параметр verbose предназначен для сетевых динамических запросов к непосредственно /api.php и на данном этапе разработки не используется.

Установить свои параметры для сессии можно прямым обращением к ней:
	sp = SAPI(root="https://spirech.org")
	sp.session.....

## Методы GET

### isonline(self) -> bool
Проверяет соединение с помощью HEAD-запроса.

### get_thread_raw(board: str, thread: complex) -> complex
Возвращает json треда или False, HTML-разметка сохранена.

### get_thread_nomarkup(board: str, thread: complex) -> complex
Возвращает json треда или False, HTML-разметка убрана.

### get_thread_markup(board: str, thread: complex) -> complex
Возвращает json треда или False, HTML-разметка заменена разметкой из библиотеки rich для терминала. 

### get_board_raw(board: str, page=0) -> complex
Возвращает json страницы доски или False, HTML-разметка сохранена.

### get_board_nomarkup(board: str, page=0) -> complex
Возвращает json страницы доски или False, HTML-разметка убрана.

### get_board_markup(board: str, page=0) -> complex
Возвращает json страницы доски или False, HTML-разметка заменена разметкой из библиотеки rich для терминала.